This invention pertains to computer systems and, more particularly, to a computer system capable of accepting one or more adapter cards in which each adapter card has one or more setup registers that are addressable at the same address as corresponding setup registers of other adapter cards.
The use of adapter cards is a well known technique for expanding the capability of a computer system. For example, if a computer user needs the capability to send and receive data, an adapter card specifically designed for modem communications can be inserted into the computer to provide, in conjunction with appropriate communications software, the required data communications capability.
Generally, personal computers are equipped with a plurality of "slots" into which adapter cards can be inserted. The essential element of each slot is a connector that is connected to an address and data bus within the computer. The adapter card includes a mating connector, usually a printed circuit board edge connector, that can be inserted into one of the computer's adapter card connectors, i.e., one of the computer's slots.
To prevent interference with other adapter cards that may already be in the system, as well as interference with various resources within the computer, each adapter card must be provided with certain "setup" parameters, such as the specification of the port address through which the card communicates over the bus. In the IBM AT.TM. computer (the bus architecture of which has come to be known as the ISA or Industry Standard Architecture) setup parameters are specified by the setting of switches, such as dual-in-line or "DIP" switches, or the use of jumpers that are located on the adapter card. The difficulty in establishing setup parameters through the use of switches and jumpers is that the user must carefully choose, usually after reading the instruction manual for each adapter card in the computer, the setup parameters for each card to ensure that one adapter card does not interfere with another.
To overcome this drawback, the IBM Micro Channel.TM. architecture uses a system in which each adapter card includes a plurality of programmable setup registers, called Programmable Option Select or "POS" registers. The particular setup parameters are determined automatically by a setup program that is supplied with each Micro Channel computer, which in turn uses information that is provided on a reference diskette that is supplied with each of the adapter cards. These setup parameters are programmed into the POS registers of each of the adapter cards, usually immediately after power on and during system initialization.
In a conventional Micro Channel adapter card, there are eight POS registers, POS0-POS7, some of which may be read only registers. Each POS register of each adapter card is addressed at the same address as the corresponding POS register of every other adapter card. More specifically, in the Micro Channel architecture, POS registers 0-7 are addressed at I/O addresses 100-107 (hex) respectively. To read from or write to the POS registers of a particular adapter card, the Micro Channel bus includes a separate setup line for each adapter card slot in the system. Thus, to setup the adapter card that is physically located in the first slot of the computer, the system is placed in the setup mode and the first setup line is activated (while all other setup lines remain in the inactive state). After properly selecting a particular adapter card, the processor can then individually address each one of the POS registers of the currently selected card. For a more detailed explanation of the POS registers of the Micro Channel architecture, the reader is referred to U.S. Pat. No. 5,038,320.
It would be desirable if the Micro Channel architecture's automatic setup procedure could be used in an ISA bus computer. However, current adapter cards for ISA bus computers do not include setup or POS registers, and if they did, the ISA bus does not include separate setup lines for each card slot. Accordingly, the invention described below includes an adapter card for an ISA bus computer (or other bus that does not include separate setup lines for each adapter card) that has setup or POS registers. These setup registers are addressed in a manner similar to the POS registers of a Micro Channel adapter card, that is, the address of each setup register of each adapter card is identical to the address of the corresponding setup register of every other adapter card. More importantly, this invention also includes a means for addressing the setup registers of each individual adapter card, despite the fact that the setup registers of each adapter card share common addresses, and despite the fact that the bus does not include separate setup lines for each adapter card.